package br.com.base.persistencia.DAO;

import java.io.Serializable;
import java.util.List;

import br.com.base.model.impl.EntidadeImpl;
import br.com.base.persistencia.filter.Filtro;


/**
 * @author Milton Domingues
 */
public interface GenericDAO<ENTIDADE extends EntidadeImpl, ID extends Serializable, FILTRO extends Filtro> {

	public ENTIDADE buscar(ID id);

	public List<ENTIDADE> consultar(FILTRO filtro);

	public void excluir(ENTIDADE entidade);

	public Class<ENTIDADE> getClassEntidade();

	public void inserir(ENTIDADE vo);

	public ENTIDADE merge(ENTIDADE vo);
}
